package com.yq.light.knowledgeDB.code.service;

import com.yq.light.commons.code.entity.KnowledgeDb;
import com.yq.light.commons.code.entity.KnowledgeFile;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public interface KnowledgeDBService {
    /**
     * select用户的知识库列表，并返回数据给前端
     * @param ownerAccount
     * @return
     */
    public List<KnowledgeDb> fetchUserKnowledgeDbList(@Param("ownerAccount") String ownerAccount);

    /**
     * select用户的知识库中的文件列表，并返回数据给前端
     * @param ownerAccount
     * @param fileTitle
     * @return
     */
    public List<KnowledgeFile> fetchUserKnowledgeDbFileList(@Param("ownerAccount") String ownerAccount,
                                                          @Param("fileTitle") String fileTitle);

    /**
     * insert新建一个知识库
     * @param knowledgeDb
     * @return
     */
    public int newKnowledgeDb(KnowledgeDb knowledgeDb);

    /**
     * insert新建一个知识库中的文件
     * @param knowledgeFile
     * @return
     */
    public int newKnowledgeFile(KnowledgeFile knowledgeFile);

    /**
     * update知识库中的文件
     * @param knowledgeFile
     * @return
     */
    public String updateKnowledgeDbFile(KnowledgeFile knowledgeFile);
}
